The present invention generally relates to file level virtualization.
A file server is an information processing apparatus, which generally provides file services via a communications network. A file server must be operationally managed so that a user can make smooth use of the file services. When a plurality of file servers are introduced pursuant to an increase in files being stored, the cost of operationally managing the file servers, as well as operationally managing the clients that make use of the respective file servers, increases.
Operational management costs for a client, for example, involve the mounting of a share unit (logical public unit) provided by a file server. If a new file server is introduced and the number of share units increases, the number of times that mounting work is carried out by the client will increase accordingly. To reduce this cost, there is technology for virtualizing a plurality of share units provided by a plurality of file servers as a single namespace, that is, file level virtualization technology. This single namespace is generally called a global namespace (GNS).
A method, which utilizes an information processing device that is logically arranged between a client and a file server (hereinafter, “root node”), is one file level virtualization technology that is known (Japan Patent Laid-open No. 2003-203029, for example, referred to hereinafter as Literature 1). The root node performs processing, which consolidates a plurality of shared directories provided by a plurality of file servers, constructs a pseudo file system, and when there is a request from a client for a prescribed file or other such object, transfers the request to the file server in which this object resides.
When a client requests an operation for a desired object to a file server, generally speaking, an identifier called an object ID is used to identify this desired object. For example, in the case of the file sharing protocol NFS (Network File System), an object ID called a file handle is used.
Because an object ID is created by an internal file server rule, when the shared directories of a plurality of file servers are consolidated, there is the likelihood that these object IDs will compete. In Literature 1, this competition is avoided by inserting file server identification information and algorithm identification information into an object ID.
However, in the technology disclosed in Literature 1, the problem is that because the root node must carry out object ID conversion, the processing load on the root node intensifies, making the root node a throughput bottleneck and lowering the overall performance of the system (responsiveness relative to a client).
Further, in the technology disclosed in Literature 1, when executing file system migration for moving data between file servers, the root node must maintain an object ID conversion table (a table that associates a migration source with a migration destination) in file units. Therefore, when deciding the destination of a request from a client, the root node must reference a table in which is recorded a huge number of entries proportional to the number of files. Thus, the processing load on the root node is heightened.